package mtt.us.client.views.stundenplan;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

import mtt.us.client.MTTUS;
import mtt.us.client.events.SetModelDataEvent;
import mtt.us.dto.StundenplanDTO;
import mtt.us.hmvcFramework.client.hmvc.view.GuiView;

import com.google.gwt.user.client.ui.FlexTable;
import com.google.gwt.user.client.ui.Label;

import hmvc4gwt.client.event.HmvcEvent;

public class StundenplanView extends GuiView {

	public void handleEvent(HmvcEvent event) {
		
		if (event instanceof SetModelDataEvent) {
			refreshView((StundenplanDTO) event.getPayload());
		}
	}

	public void doInitImpl() {
		getController().register(SetModelDataEvent.class, this);
	}
	
	private void refreshView(StundenplanDTO stundenplan) {
		
		FlexTable tableStundenplan = new FlexTable();
		Label labelTitelUhrzeit = new Label(MTTUS.constants.time());
		labelTitelUhrzeit.setStylePrimaryName("tableHeader");
		
		tableStundenplan.setWidget(0, 0, labelTitelUhrzeit);
		
		List listWochentage = new ArrayList(7);
		listWochentage.add(MTTUS.constants.monday());
		listWochentage.add(MTTUS.constants.tuesday());
		listWochentage.add(MTTUS.constants.wednesday());
		listWochentage.add(MTTUS.constants.thursday());
		listWochentage.add(MTTUS.constants.friday());
		
		int i = 1;
		Iterator iterator = listWochentage.iterator();
		while (iterator.hasNext()) {
			String wochentag = (String) iterator.next();
			Label label = new Label(MTTUS.constants.monday());
			label.setStylePrimaryName("tableHeader");
			tableStundenplan.setWidget(0, i, new Label(wochentag));
			
			i++;
		}
		
		List listUhzeiten = new ArrayList();
		listUhzeiten.add("7-9");
		listUhzeiten.add("9-11");
		listUhzeiten.add("11-13");
		listUhzeiten.add("13-15");
		listUhzeiten.add("15-17");
		listUhzeiten.add("17-19");
		listUhzeiten.add("19-21");
		
		i = 1;
		Iterator iteratorUhrzeiten = listUhzeiten.iterator();
		while (iteratorUhrzeiten.hasNext()) {
			String uhrzeit = (String) iterator.next();
			
			Label labelUhrzeit = new Label(uhrzeit);
			labelUhrzeit.setStylePrimaryName("tableheader");
			
			tableStundenplan.setWidget(i, 0, labelUhrzeit);
			
			i++;
		}
		
//		TODO Stundenplandaten eintragen
		
		
	}

}
